home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / C64 / T-TPUG Old Monthly Disks / (c)ta.d64 / home budget.c (.txt) < prev    next >
Commodore BASIC  |  2007-02-04  |  3KB  |  134 lines

  1. 10 REM*********************
  2. 20 REM*                   *
  3. 30 REM*    HOME BUDGET    *
  4. 40 REM*        BY         *
  5. 50 REM*    BRIAN DOBBS    *
  6. 60 REM*                   *
  7. 70 REM*  TIMMINS,ONTARIO  *
  8. 80 REM*                   *
  9. 90 REM*********************
  10. 100 POKE53280,12:POKE53281,0:DIMA$(13,13):GOTO180
  11. 110 GOSUB1230
  12. 120 OPEN14,8,14,"0:"+NM$+",S,":X=1
  13. 130 Y=2
  14. 140 INPUT#14, A$(X,Y):Y=Y+1:IFY>13THEN160
  15. 150 GOTO140
  16. 160 X=X+1:IFX>13THENCLOSE14:GOTO180
  17. 170 GOTO130
  18. 180 PRINT"[147]"TAB(14)"BUDGET MENU"
  19. 190 PRINTTAB(10)"1-W[146]RITE MONTHLY BILLS":PRINT""
  20. 200 PRINTTAB(10)"2-V[146]IEW MONTHLY BILLS":PRINT""
  21. 210 PRINTTAB(10)"3-B[146]ARCHART TREND OF BILLS":PRINT""
  22. 220 PRINTTAB(10)"4-P[146]RINTER TREND OF BILLS":PRINT""
  23. 230 PRINTTAB(10)"5-S[146]AVE DATA TO DISK":PRINT""
  24. 240 PRINTTAB(10)"6-L[146]OAD DATA FROM DISK":PRINT""
  25. 250 PRINTTAB(10)"7-CREATE INITIAL FILE":PRINT""
  26. 260 PRINTTAB(12)"SELECT CHOICE ?":Y=0
  27. 270 GETAN$:IFAN$=""THEN270
  28. 280 FORX=1TO7:IFAN$=MID$("WVBPSLC",X,1)THENY=X
  29. 290 NEXT:ONYGOTO410,300,500,730,960,110,990:GOTO180
  30. 300 PRINT"[147]":INPUT"  ENTER MONTH TO VIEW";AN$:GOSUB1020
  31. 310 PRINT"[147]":PRINTTAB(15)AN$:PRINT"":Y=2
  32. 320 PRINTA$(1,Y):Y=Y+1:IFY>13THEN340
  33. 330 GOTO320
  34. 340 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][145]":Y=2
  35. 350 PRINTTAB(15)A$(X,Y):Y=Y+1:IFY>13THEN370
  36. 360 GOTO350
  37. 370 GOSUB1300
  38. 380 PRINT"MONTHLY TOTAL"TAB(14)Q+AA+BB
  39. 390 GETA$:IFA$=""THEN390
  40. 400 GOTO180
  41. 410 PRINT"[147]":INPUT"  WHAT MONTH TO WRITE BILLS";AN$
  42. 420 GOSUB1020
  43. 430 Y=2:PRINT"[147]":PRINTTAB(15)AN$:PRINT""
  44. 440 PRINTA$(1,Y):Y=Y+1:IFY>13THEN460
  45. 450 GOTO440
  46. 460 PRINT"[145][145][145][145][145][145][145][145][145][145][145][145][145]":Y=2
  47. 470 PRINTTAB(15):INPUTA$(X,Y)
  48. 480 Y=Y+1:IFY>13THEN180
  49. 490 GOTO470
  50. 500 INPUT"[147]  ENTER NAME OF BILL";AN$
  51. 510 FORP=2TO13
  52. 520 IFAN$=A$(1,P)THENY=P
  53. 530 NEXT
  54. 540 PRINT"  WHAT IS MAXIMUM SCALE FOR "A$(1,Y):INPUT"  ";B
  55. 550 PRINT"[147]":PRINTTAB(20-(LEN(A$(1,Y))/2))A$(1,Y)
  56. 560 PRINT""B:Z=0
  57. 570 Z=Z+(B/20):IFZ=BTHEN590
  58. 580 PRINTINT(B-Z):GOTO570
  59. 590 R=1992:X=2:T=56264:U=2
  60. 600 FORE=RTOR-(40*((VAL(A$(X,Y))/(B/20))))STEP-40:POKEE,224:NEXT
  61. 610 FORF=TTOT-(40*((VAL(A$(X,Y))/(B/20))))STEP-40:POKEF,U:NEXT
  62. 620 R=R+2:X=X+1:T=T+2:U=U+1
  63. 630 IFU=3THENU=1
  64. 640 IFX=14THEN660
  65. 650 GOTO600
  66. 660 R=1992:T=56264:POKER,138:POKET,1:POKER+2,134:POKET+2,1:POKER+4,141
  67. 670 POKET+4,1:POKER+6,129:POKET+6,1:POKER+8,141:POKET+8,1:POKER+10,138
  68. 680 POKET+10,1:POKER+12,138:POKET+12,1:POKER+14,129:POKET+14,1:POKER+16,147
  69. 690 POKET+16,1:POKER+18,143:POKET+18,1:POKER+20,142:POKET+20,1:POKER+22,132
  70. 700 POKET+22,1
  71. 710 GETA$:IFA$=""THEN710
  72. 720 GOTO180
  73. 730 OPEN4,4:PRINT#4,TAB(38)"BUDGET 1984":PRINT#4:L=2:M=7
  74. 740 PRINT#4," BILL               ";
  75. 750 PRINT#4,"JANUARY   FEBUARY   MARCH     APRIL     MAY       JUNE"
  76. 760 GOSUB850
  77. 770 L=2:M=7
  78. 780 GOSUB890
  79. 790 L=8:M=13:PRINT#4," BILL               ";
  80. 800 PRINT#4,"JULY      AUGUST    SEPTEMBER OCTOBER   NOVEMBER  DECEMBER"
  81. 810 GOSUB850
  82. 820 L=8:M=13
  83. 830 GOSUB890
  84. 840 CLOSE4:RESTORE:GOTO180
  85. 850 FORY=1TO13:Z=20-LEN(A$(1,Y))
  86. 860 PRINT#4,A$(1,Y)TAB(Z);
  87. 870 FORI=LTOM:PRINT#4,(A$(I,Y))TAB(10-LEN(A$(I,Y)));:NEXTI:PRINT#4,CHR$(10)
  88. 880 NEXTY:PRINT#4:RETURN
  89. 890 PRINT#4,"MONTHLY TOTAL"TAB(6)
  90. 900 FORX=LTOM
  91. 910 GOSUB1300
  92. 920 C=Q+AA+BB:C$=STR$(C)
  93. 930 PRINT#4,Q+AA+BBTAB(9-LEN(C$));:NEXTX
  94. 940 PRINT#4,CHR$(10)
  95. 950 RETURN
  96. 960 GOSUB1230
  97. 970 OPEN14,8,14,"@0:"+NM$+",S,W"
  98. 980 X=1:GOTO1170
  99. 990 PRINT"[147]  A TOTAL OF 12 BILLS WILL BE ENTERED.":X=1:Y=2
  100. 1000 INPUT"NAME OF BILL";A$(X,Y):Y=Y+1:IFY>13THEN1070
  101. 1010 GOTO1000
  102. 1020 FORW=1TO12
  103. 1030 READD$
  104. 1040 IFAN$=D$THENX=W+1
  105. 1050 NEXT
  106. 1060 RESTORE:RETURN
  107. 1070 PRINT"[147]":X=2
  108. 1080 Y=2
  109. 1090 A$(X,Y)="0"
  110. 1100 Y=Y+1:IFY>13THEN1120
  111. 1110 GOTO1090
  112. 1120 X=X+1:IFX>13THEN1140
  113. 1130 GOTO1080
  114. 1140 GOSUB1230
  115. 1150 OPEN14,8,14,"0:"+NM$+",S,W"
  116. 1160 X=1:PRINT"  CREATING INITIAL FILE[146]"
  117. 1170 Y=2
  118. 1180 PRINT#14,A$(X,Y):Y=Y+1:IFY>13THEN1200
  119. 1190 GOTO1180
  120. 1200 X=X+1:IFX>13THEN1220
  121. 1210 GOTO1170
  122. 1220 CLOSE14:GOTO180
  123. 1230 INPUT"[147]  FILENAME[146]";NM$
  124. 1240 PRINT"  PRESS 'F1[146]' TO CONTINUE"
  125. 1250 GETA$:IFA$=""THEN1250
  126. 1260 IFA$=CHR$(133)THENRETURN
  127. 1270 GOTO1260
  128. 1280 DATA JANUARY,FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST,SEPTEMBER,OCTOBER
  129. 1290 DATA NOVEMBER,DECEMBER
  130. 1300 Q=(VAL(A$(X,2)))+(VAL(A$(X,3)))+(VAL(A$(X,4)))+(VAL(A$(X,5)))
  131. 1310 AA=(VAL(A$(X,6)))+(VAL(A$(X,7)))+(VAL(A$(X,8)))+(VAL(A$(X,9)))
  132. 1320 BB=(VAL(A$(X,10)))+(VAL(A$(X,11)))+(VAL(A$(X,12)))+(VAL(A$(X,13)))
  133. 1330 RETURN
  134.